CODE | LAS3019 | ||||||
TITLE | Blockchain and Smart Contract Programming | ||||||
UM LEVEL | H - Higher Level | ||||||
MQF LEVEL | 6 | ||||||
ECTS CREDITS | 4 | ||||||
DEPARTMENT | Centre for the Liberal Arts and Sciences | ||||||
DESCRIPTION | In this unit students will be exposed to programming languages and tools used for programming blockchain distributed applications and smart contracts. This unit will cover different public and private blockchain technologies including but not limited to Ethereum and Hyperledger. This technical unit will cover the following hands-on topics: * Introduction to blockchain and distributed ledger technologies and opportunities brought about with this technology. We will cover the distinction between public and private ledgers and the implications of using the two including privacy issues; * An introduction to distributed application and smart contracts using Ethereum; * Interacting with Ethereum nodes using RPC and web3; * Programming, debugging and deployment tools including but not limited to Truffle, MetaMask and Remix; * Solidity coding for Ethereum smart contracts in depth; * Security issues and how to write smart contracts with security in mind; * Developing smart contracts with Hyperledger Fabric; * Setup, deployment, security and interaction with Hyperledger. Learning Outcomes: 1. Knowledge & Understanding: By the end of the unit the student will be able to: - Given a distributed ledger architecture, develop systems over such an architecture in a secure and dependable manner; - Choose between different solutions for public and private ledger technologies ideal for a particular use case; - Demonstrate how Ethereum smart contracts work; - Demonstrate how Hyperledger smart contracts work. 2. Skills: By the end of the unit the student will be able to: - Develop distributed applications and smart contracts for Ethereum using Solidity; - Deploy, test and debug such smart contracts using the different tools covered; - Write smart contracts with security in mind; - Setup and deploy smart contracts in Hyperledger; - Interact with Hyperledger. Main Text/s and any supplementary readings: • M Swan, Blockchain: Blueprint for a New Economy, by O' Reilly, 1st Edition, ISBN-13: 978-1491920497 • C Dannen, Introducing Ethereum and Solidity: Foundations of Cryptocurrency and Blockchain Programming for Beginners, by Apress, 1st Edition, ISBN-13: 978-1484225349 • B Badr, Blockchain By Example: Decentralized applications using Bitcoin, Ethereum, and Hyperledger, by Packt, ISBN-13: 978-1788475686 • A Antonopolous and G Wood, Mastering Ethereum: Building Smart Contracts and Dapps, by O'Reilly, 1st Edition, ISBN-13: 978-1491971949 |
||||||
STUDY-UNIT TYPE | Lecture | ||||||
METHOD OF ASSESSMENT |
|
||||||
LECTURER/S | Joshua Ellul Jonathan Galea Loui Mercieca |
||||||
The University makes every effort to ensure that the published Courses Plans, Programmes of Study and Study-Unit information are complete and up-to-date at the time of publication. The University reserves the right to make changes in case errors are detected after publication.
The availability of optional units may be subject to timetabling constraints. Units not attracting a sufficient number of registrations may be withdrawn without notice. It should be noted that all the information in the description above applies to study-units available during the academic year 2024/5. It may be subject to change in subsequent years. |